package com.GraduationDesign.backend.data.project;

import com.GraduationDesign.backend.po.Project;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author: wzx
 * @date: 2022/3/24
 */
@Mapper
@Repository
public interface ProjectMapper {
    /**
     * 增加项目
     * @param project 项目内容
     */
    void  addProject( Project project);

    /**判断项目是否存在
     * @param projectId 项目id
     * @return 是否存在
     */
    boolean getProject(@Param("projectId") int projectId);

    /**
     * 删除项目
     * @param projectId 项目id
     */
    void deleteProject(@Param("projectId") int projectId);

    /**
     * 根据用户id获取项目列表
     * @param userId 用户id
     * @return 项目列表
     */
    List<Project> getProjects(@Param("userId") int userId);

    /**
     * 获得所有项目
     * @return 项目列表
     */
    List<Project> getAllProjects();

    /**
     * 返还项目所有信息
     * @param projectId 项目id
     * @return 返还项目所有信息
     */
    Project getProjectInfo(@Param("projectId") int projectId);

    /**
     * 获取项目名字
     * @param projectId id
     * @return 名字
     */
    String getProjectName(@Param("projectId") Integer projectId);

    /**
     *返回项目地址
     *  @param projectId id
     * @return 地址
     */
    String getProjectAddress(@Param("projectId") Integer projectId);
}
